import 'package:flutter/material.dart'; // 引入 Flutter 材料库，虽然这里只是为了Icon

typedef ButtonItem = ({String label, Icon icon, void Function()? onPressed});

void main() {
  final List<ButtonItem> buttons = [
    (
      label: "Button I",
      icon: const Icon(Icons.upload_file),
      onPressed: () => print("Action -> Button I"),
    ),
    (
      label: "Button II",
      icon: const Icon(Icons.info),
      onPressed: () => print("Action -> Button II"),
    ),
  ];

  // 使用 typedef 创建的按钮列表
  for (var button in buttons) {
    print(
      'Label: ${button.label}, Icon: ${button.icon}, onPressed: ${button.onPressed}',
    );
  }
  // 示例代码的后半部分由于使用了 Flutter 的 Container 和 OutlinedButton，
  // 无法在纯 Dart 环境下运行。如果需要在 Flutter 环境中使用，
  // 可以将这部分代码复制到 Flutter 项目中。
}
